/**
 * Project Name:RabbitmqListener
 * File Name:RabbitmqListener.java
 * Package Name:com.bwda.rabbitmq.listener;
 * Date:2019年4月28日
 * Copyright (c) 2019, 江苏保旺达软件有限公司 All Rights Reserved.
 */
package com.bwda.dsrs.filecenter.rabbitmq.listener;

/**
 * 队列监听
 *
 * @author youzhen
 * @date 2019/4/2
 */

public class RabbitmqListener {

//    private static final Logger log = LoggerFactory.getLogger(RabbitmqListener.class);
//
//    @Autowired
//    private FileDownloadService fileDownloadService;
//
//    @Autowired
//    private OrgServiceApi orgServiceApi;
//
//    @Value("${file_store_type}")
//    private String fileStoreType;
//
//
//    /**
//     * FTP文件下载列表
//     */
////    @RabbitListener(queues = "${rabbit.queue.ftp.result}")
//    public void ftpDownloadListener(String strJosn, Channel channel, Message message) throws IOException {
//        try {
//            JSONObject fileJson = JSONObject.parseObject(strJosn);
//            log.info("处理完成，queue.ftp.result接收消息:" + strJosn.toString());
//            FileDownloadPo fileDownloadPo = JSONObject.toJavaObject(fileJson, FileDownloadPo.class);
//            //获取过期时间
//            String val = orgServiceApi.getDictValByCode("expirationTime");
//            log.info("过期时间:" + val);
//            Date overdueDate = getDateAfter(Integer.parseInt(val));
//            fileDownloadPo.setDownloadExpireTime(overdueDate);
//
//            //TODO 处理好执行更新策略
//            fileDownloadPo.setFileSource(null);
//            fileDownloadPo.setUserCode(null);
//            fileDownloadPo.setFileIds(null);
//            fileDownloadPo.setFileNames(null);
//            fileDownloadService.update(fileDownloadPo);
//
//        } catch (Exception e) {
//            log.error("RabbitmqListener.ftpDownloadListener bad request.");
//        } finally {
//            channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
//        }
//    }
//
//    /**
//     * 外发下载列表
//     */
//    @RabbitListener(queues = "${rabbit.queue.out.result}")
//    public void outDownloadListener(String strJosn, Channel channel, Message message) throws IOException {
//        try {
//            log.info("queue.out.result 外发处理结果,接收消息:" + strJosn.toString());
//            JSONObject fileJson = JSONObject.parseObject(strJosn);
//            FileDownloadPo fv = JSONObject.toJavaObject(fileJson, FileDownloadPo.class);
//            fv.setFileSource(Constants.FileSource.OUT);
//            //获取过期时间
//            String val = orgServiceApi.getDictValByCode("expirationTime");
//            log.info("过期时间:" + val);
//            Date overdueDate = getDateAfter(Integer.parseInt(val));
//            fv.setDownloadExpireTime(overdueDate);
//            fileDownloadService.update(fv);
//        } catch (Exception e) {
//            log.error("RabbitmqListener.outDownloadListener bad request.");
//        } finally {
//            channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
//        }
//    }
//
//    /**
//     * 得到几天后的时间
//     *
//     * @param day
//     * @return
//     */
//    public static Date getDateAfter(int day) {
//        Calendar now = Calendar.getInstance();
//        now.setTime(new Date());
//        now.set(Calendar.DATE, now.get(Calendar.DATE) + day);
//        return now.getTime();
//    }

}
